<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.11"/>
<title>Aria: ArUtil Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Aria
   &#160;<span id="projectnumber">2.9.1</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li><a href="examples.html"><span>Examples</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('classArUtil.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="#pub-static-attribs">Static Public Attributes</a> &#124;
<a href="#pro-static-methods">Static Protected Member Functions</a> &#124;
<a href="classArUtil-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">ArUtil Class Reference<div class="ingroups"><a class="el" href="group__UtilityClasses.html">Utility Classes</a> &#124; <a class="el" href="group__ImportantClasses.html">Important Classes</a></div></div>  </div>
</div><!--header-->
<div class="contents">

<p>Contains various utility functions, including cross-platform wrappers around common system functions.  
 <a href="classArUtil.html#details">More...</a></p>

<p><code>#include &lt;ariaUtil.h&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:a8dbaef80af16916fe5647dff5092fdad"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a8dbaef80af16916fe5647dff5092fdad">BITS</a> { <br />
&#160;&#160;<a class="el" href="classArUtil.html#a8dbaef80af16916fe5647dff5092fdada0554099ded8f4dc4683cfa1b6e0ba776">BIT0</a> = 0x1, 
<a class="el" href="classArUtil.html#a8dbaef80af16916fe5647dff5092fdadabb1338bd9284d6d2ebca223079214804">BIT1</a> = 0x2, 
<a class="el" href="classArUtil.html#a8dbaef80af16916fe5647dff5092fdadae0d67fd8e939d54812b02d1a728c5075">BIT2</a> = 0x4, 
<a class="el" href="classArUtil.html#a8dbaef80af16916fe5647dff5092fdada261df8c57cdaedbf6ee9e4ccbb1b912f">BIT3</a> = 0x8, 
<br />
&#160;&#160;<a class="el" href="classArUtil.html#a8dbaef80af16916fe5647dff5092fdada52fc916728fb37dd1a26bd3e8a75f1ca">BIT4</a> = 0x10, 
<a class="el" href="classArUtil.html#a8dbaef80af16916fe5647dff5092fdadae59af3ca97f6a3261b2a0d9e07782f91">BIT5</a> = 0x20, 
<a class="el" href="classArUtil.html#a8dbaef80af16916fe5647dff5092fdadadea62434f4ba9103a4bda5be5b97fa86">BIT6</a> = 0x40, 
<a class="el" href="classArUtil.html#a8dbaef80af16916fe5647dff5092fdadad3530ac1d8686c6a24f969f714a051a4">BIT7</a> = 0x80, 
<br />
&#160;&#160;<a class="el" href="classArUtil.html#a8dbaef80af16916fe5647dff5092fdadae1b699aa174bb379f2d80fdc37886d9f">BIT8</a> = 0x100, 
<a class="el" href="classArUtil.html#a8dbaef80af16916fe5647dff5092fdada8b7f8130c6f38d9f4cea32904e83e61a">BIT9</a> = 0x200, 
<a class="el" href="classArUtil.html#a8dbaef80af16916fe5647dff5092fdada00a8d55d6bcd015ac7fdcd2b337e9c24">BIT10</a> = 0x400, 
<a class="el" href="classArUtil.html#a8dbaef80af16916fe5647dff5092fdada9a33aebaedff8c97ed9c0a2fbdd27e7b">BIT11</a> = 0x800, 
<br />
&#160;&#160;<a class="el" href="classArUtil.html#a8dbaef80af16916fe5647dff5092fdada3cbd80e0aaae949343225fb766222ac9">BIT12</a> = 0x1000, 
<a class="el" href="classArUtil.html#a8dbaef80af16916fe5647dff5092fdada8d450816c7f4188ed522a95cac35f159">BIT13</a> = 0x2000, 
<a class="el" href="classArUtil.html#a8dbaef80af16916fe5647dff5092fdada6bc0449909f5dcabfa7d24ada336ff83">BIT14</a> = 0x4000, 
<a class="el" href="classArUtil.html#a8dbaef80af16916fe5647dff5092fdadaa8eebcbae86c6b4dc7ddbf3a23546a24">BIT15</a> = 0x8000
<br />
 }<tr class="memdesc:a8dbaef80af16916fe5647dff5092fdad"><td class="mdescLeft">&#160;</td><td class="mdescRight">Values for the bits from 0 to 16.  <a href="classArUtil.html#a8dbaef80af16916fe5647dff5092fdad">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:a8dbaef80af16916fe5647dff5092fdad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5edb8ea00fead31d95d83a60cc73e7f2"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a5edb8ea00fead31d95d83a60cc73e7f2">REGKEY</a> { <br />
&#160;&#160;<a class="el" href="classArUtil.html#a5edb8ea00fead31d95d83a60cc73e7f2a5b8122b7c83189f317b0534c0dcffbdd">REGKEY_CLASSES_ROOT</a>, 
<a class="el" href="classArUtil.html#a5edb8ea00fead31d95d83a60cc73e7f2ae08e882a7d114c155065fe8ac6f4e2e8">REGKEY_CURRENT_CONFIG</a>, 
<a class="el" href="classArUtil.html#a5edb8ea00fead31d95d83a60cc73e7f2a59190c42ab4b188994502cc486825faa">REGKEY_CURRENT_USER</a>, 
<a class="el" href="classArUtil.html#a5edb8ea00fead31d95d83a60cc73e7f2a2b29dab942e7b0ea37aa9ead982c9124">REGKEY_LOCAL_MACHINE</a>, 
<br />
&#160;&#160;<a class="el" href="classArUtil.html#a5edb8ea00fead31d95d83a60cc73e7f2a7e59b9a94e1dfe79838de668c9061b6e">REGKEY_USERS</a>
<br />
 }<tr class="memdesc:a5edb8ea00fead31d95d83a60cc73e7f2"><td class="mdescLeft">&#160;</td><td class="mdescRight">These are for passing into getStringFromRegistry.  <a href="classArUtil.html#a5edb8ea00fead31d95d83a60cc73e7f2">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:a5edb8ea00fead31d95d83a60cc73e7f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:a196eae227f3e6fc7387bb623b4ddea03"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a196eae227f3e6fc7387bb623b4ddea03">addDirectories</a> (char *dest, size_t destLength, const char *baseDir, const char *insideDir)</td></tr>
<tr class="memdesc:a196eae227f3e6fc7387bb623b4ddea03"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds two directories, taking care of all slash issues.  <a href="#a196eae227f3e6fc7387bb623b4ddea03">More...</a><br /></td></tr>
<tr class="separator:a196eae227f3e6fc7387bb623b4ddea03"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acd8e6fd8ab58feaf25fd1eef4376306d"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#acd8e6fd8ab58feaf25fd1eef4376306d">appendSlash</a> (char *path, size_t pathLength)</td></tr>
<tr class="memdesc:acd8e6fd8ab58feaf25fd1eef4376306d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Appends a slash to a path if there is not one there already.  <a href="#acd8e6fd8ab58feaf25fd1eef4376306d">More...</a><br /></td></tr>
<tr class="separator:acd8e6fd8ab58feaf25fd1eef4376306d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a602e82940dc83918d42fa74952773592"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a602e82940dc83918d42fa74952773592">appendSlash</a> (std::string &amp;path)</td></tr>
<tr class="memdesc:a602e82940dc83918d42fa74952773592"><td class="mdescLeft">&#160;</td><td class="mdescRight">Appends a slash to the given string path if necessary.  <a href="#a602e82940dc83918d42fa74952773592">More...</a><br /></td></tr>
<tr class="separator:a602e82940dc83918d42fa74952773592"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a63ac679f006f65c487a71790b1177707"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a63ac679f006f65c487a71790b1177707"></a>
static double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a63ac679f006f65c487a71790b1177707">atof</a> (const char *nptr)</td></tr>
<tr class="memdesc:a63ac679f006f65c487a71790b1177707"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the floating point number from the string representation of that number in <em>nptr</em>, or HUGE_VAL for "inf" or -HUGE_VAL for "-inf". <br /></td></tr>
<tr class="separator:a63ac679f006f65c487a71790b1177707"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3c06a89e2a095d184d8d7b3cf18cb885"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3c06a89e2a095d184d8d7b3cf18cb885"></a>
static int&#160;</td><td class="memItemRight" valign="bottom"><b>atoi</b> (const char *str, bool *ok=NULL, bool forceHex=false)</td></tr>
<tr class="separator:a3c06a89e2a095d184d8d7b3cf18cb885"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab97031fd3fac6e44936406412896a6f0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab97031fd3fac6e44936406412896a6f0"></a>
static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#ab97031fd3fac6e44936406412896a6f0">changeFileTimestamp</a> (const char *fileName, time_t timestamp)</td></tr>
<tr class="memdesc:ab97031fd3fac6e44936406412896a6f0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the timestamp on the specified file. <br /></td></tr>
<tr class="separator:ab97031fd3fac6e44936406412896a6f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a18bdaad16fec7ca9e36351b3006de309"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a18bdaad16fec7ca9e36351b3006de309"></a>
static int&#160;</td><td class="memItemRight" valign="bottom"><b>close</b> (int fd)</td></tr>
<tr class="separator:a18bdaad16fec7ca9e36351b3006de309"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7ec7c56af3e62905f74194492bfef213"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7ec7c56af3e62905f74194492bfef213"></a>
static const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a7ec7c56af3e62905f74194492bfef213">convertBool</a> (int val)</td></tr>
<tr class="memdesc:a7ec7c56af3e62905f74194492bfef213"><td class="mdescLeft">&#160;</td><td class="mdescRight">Converts an integer value into a string for true or false. <br /></td></tr>
<tr class="separator:a7ec7c56af3e62905f74194492bfef213"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a76322201c6016961e5c9645d9796f2ba"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a76322201c6016961e5c9645d9796f2ba"></a>
static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a76322201c6016961e5c9645d9796f2ba">creat</a> (const char *pathname, mode_t mode, bool closeOnExec=true)</td></tr>
<tr class="memdesc:a76322201c6016961e5c9645d9796f2ba"><td class="mdescLeft">&#160;</td><td class="mdescRight">Opens a file, defaulting it so that the file will close on exec. <br /></td></tr>
<tr class="separator:a76322201c6016961e5c9645d9796f2ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6b5f17df33bafc1882eb3d5f519e1200"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:a6b5f17df33bafc1882eb3d5f519e1200"><td class="memTemplItemLeft" align="right" valign="top">static void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classArUtil.html#a6b5f17df33bafc1882eb3d5f519e1200">deleteSet</a> (T begin, T end)</td></tr>
<tr class="memdesc:a6b5f17df33bafc1882eb3d5f519e1200"><td class="mdescLeft">&#160;</td><td class="mdescRight">Delete all members of a set. Does NOT empty the set.  <a href="#a6b5f17df33bafc1882eb3d5f519e1200">More...</a><br /></td></tr>
<tr class="separator:a6b5f17df33bafc1882eb3d5f519e1200"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2d327400c6ebecc3b6f1c2ce35df1c74"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
<tr class="memitem:a2d327400c6ebecc3b6f1c2ce35df1c74"><td class="memTemplItemLeft" align="right" valign="top">static void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classArUtil.html#a2d327400c6ebecc3b6f1c2ce35df1c74">deleteSetPairs</a> (T begin, T end)</td></tr>
<tr class="memdesc:a2d327400c6ebecc3b6f1c2ce35df1c74"><td class="mdescLeft">&#160;</td><td class="mdescRight">Delete all members of a set. Does NOT empty the set.  <a href="#a2d327400c6ebecc3b6f1c2ce35df1c74">More...</a><br /></td></tr>
<tr class="separator:a2d327400c6ebecc3b6f1c2ce35df1c74"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a99293bdfc662ba9afe57a9576a23941d"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a99293bdfc662ba9afe57a9576a23941d">escapeSpaces</a> (char *dest, const char *src, size_t maxLen)</td></tr>
<tr class="memdesc:a99293bdfc662ba9afe57a9576a23941d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Puts a \ before spaces in src, puts it into dest.  <a href="#a99293bdfc662ba9afe57a9576a23941d">More...</a><br /></td></tr>
<tr class="separator:a99293bdfc662ba9afe57a9576a23941d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad90288baf1e8343d4c5929467d028012"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad90288baf1e8343d4c5929467d028012"></a>
static double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#ad90288baf1e8343d4c5929467d028012">feetToMeters</a> (const double f)</td></tr>
<tr class="memdesc:ad90288baf1e8343d4c5929467d028012"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert US feet to meters. <br /></td></tr>
<tr class="separator:ad90288baf1e8343d4c5929467d028012"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a731729868fac7cf87c9894fe024f8a6c"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a731729868fac7cf87c9894fe024f8a6c">findFile</a> (const char *fileName)</td></tr>
<tr class="memdesc:a731729868fac7cf87c9894fe024f8a6c"><td class="mdescLeft">&#160;</td><td class="mdescRight">OS-independent way of checking to see if a file exists and is readable.  <a href="#a731729868fac7cf87c9894fe024f8a6c">More...</a><br /></td></tr>
<tr class="separator:a731729868fac7cf87c9894fe024f8a6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:add6206b3dfe5bc857604eb3e1fa467cd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="add6206b3dfe5bc857604eb3e1fa467cd"></a>
static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#add6206b3dfe5bc857604eb3e1fa467cd">findFirstStringInRegistry</a> (const char *key, const char *value, char *str, int len)</td></tr>
<tr class="memdesc:add6206b3dfe5bc857604eb3e1fa467cd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a string from the Windows registry, searching each of the following registry root paths in order: REGKEY_CURRENT_USER, REGKEY_LOCAL_MACHINE. <br /></td></tr>
<tr class="separator:add6206b3dfe5bc857604eb3e1fa467cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7fc7330b06db74f4425fd4e0c3beff09"><td class="memItemLeft" align="right" valign="top">
static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__easy.html#ga7fc7330b06db74f4425fd4e0c3beff09">findMax</a> (int first, int second)</td></tr>
<tr class="memdesc:ga7fc7330b06db74f4425fd4e0c3beff09"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the maximum of the two values. <br /></td></tr>
<tr class="separator:ga7fc7330b06db74f4425fd4e0c3beff09"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad6ef4d90b07063cf2e6cc725ae73d4c3"><td class="memItemLeft" align="right" valign="top">
static double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__easy.html#gad6ef4d90b07063cf2e6cc725ae73d4c3">findMax</a> (double first, double second)</td></tr>
<tr class="memdesc:gad6ef4d90b07063cf2e6cc725ae73d4c3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the maximum of the two values. <br /></td></tr>
<tr class="separator:gad6ef4d90b07063cf2e6cc725ae73d4c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab185c9fb51fceba5736524d60870a3b3"><td class="memItemLeft" align="right" valign="top">
static unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__easy.html#gab185c9fb51fceba5736524d60870a3b3">findMaxU</a> (unsigned int first, unsigned int second)</td></tr>
<tr class="memdesc:gab185c9fb51fceba5736524d60870a3b3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the maximum of the two values. <br /></td></tr>
<tr class="separator:gab185c9fb51fceba5736524d60870a3b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae56731db94fa119a2ec98ae3e1be29a5"><td class="memItemLeft" align="right" valign="top">
static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__easy.html#gae56731db94fa119a2ec98ae3e1be29a5">findMin</a> (int first, int second)</td></tr>
<tr class="memdesc:gae56731db94fa119a2ec98ae3e1be29a5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the minimum of the two values. <br /></td></tr>
<tr class="separator:gae56731db94fa119a2ec98ae3e1be29a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa40c308bbd855f066a500a5f2761f254"><td class="memItemLeft" align="right" valign="top">
static double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__easy.html#gaa40c308bbd855f066a500a5f2761f254">findMin</a> (double first, double second)</td></tr>
<tr class="memdesc:gaa40c308bbd855f066a500a5f2761f254"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the minimum of the two values. <br /></td></tr>
<tr class="separator:gaa40c308bbd855f066a500a5f2761f254"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4b9123b4fa602266d5415c3e6a53983d"><td class="memItemLeft" align="right" valign="top">
static unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__easy.html#ga4b9123b4fa602266d5415c3e6a53983d">findMinU</a> (unsigned int first, unsigned int second)</td></tr>
<tr class="memdesc:ga4b9123b4fa602266d5415c3e6a53983d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the minimum of the two values. <br /></td></tr>
<tr class="separator:ga4b9123b4fa602266d5415c3e6a53983d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a780b9f50e6181679a1e60105a7edccbb"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a780b9f50e6181679a1e60105a7edccbb">fixBadCharacters</a> (std::string *strToFix, bool removeSpaces, bool fixOtherWhiteSpace=true)</td></tr>
<tr class="memdesc:a780b9f50e6181679a1e60105a7edccbb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fixes the bad characters in the given string.  <a href="#a780b9f50e6181679a1e60105a7edccbb">More...</a><br /></td></tr>
<tr class="separator:a780b9f50e6181679a1e60105a7edccbb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a891a7c83c2f48b4acf9d7206247bbda8"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a891a7c83c2f48b4acf9d7206247bbda8">fixSlashes</a> (char *path, size_t pathLength)</td></tr>
<tr class="memdesc:a891a7c83c2f48b4acf9d7206247bbda8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fix the slash orientation in file path string for windows or linux.  <a href="#a891a7c83c2f48b4acf9d7206247bbda8">More...</a><br /></td></tr>
<tr class="separator:a891a7c83c2f48b4acf9d7206247bbda8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac03aa9478d9b406f63f4581ea6d22082"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#ac03aa9478d9b406f63f4581ea6d22082">fixSlashes</a> (std::string &amp;path)</td></tr>
<tr class="memdesc:ac03aa9478d9b406f63f4581ea6d22082"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fixes the slash orientation in the given file path string for the current platform.  <a href="#ac03aa9478d9b406f63f4581ea6d22082">More...</a><br /></td></tr>
<tr class="separator:ac03aa9478d9b406f63f4581ea6d22082"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abb7835bb32013eff18fa8f9c9be4f166"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#abb7835bb32013eff18fa8f9c9be4f166">fixSlashesBackward</a> (char *path, size_t pathLength)</td></tr>
<tr class="memdesc:abb7835bb32013eff18fa8f9c9be4f166"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fix the slash orientation in file path string to be all backward.  <a href="#abb7835bb32013eff18fa8f9c9be4f166">More...</a><br /></td></tr>
<tr class="separator:abb7835bb32013eff18fa8f9c9be4f166"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0f3450a5c8fc6730c8d568aac611d7a8"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a0f3450a5c8fc6730c8d568aac611d7a8">fixSlashesForward</a> (char *path, size_t pathLength)</td></tr>
<tr class="memdesc:a0f3450a5c8fc6730c8d568aac611d7a8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fix the slash orientation in file path string to be all forward.  <a href="#a0f3450a5c8fc6730c8d568aac611d7a8">More...</a><br /></td></tr>
<tr class="separator:a0f3450a5c8fc6730c8d568aac611d7a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2b989cbc1c67fa6c726108179bddbe8c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2b989cbc1c67fa6c726108179bddbe8c"></a>
static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a2b989cbc1c67fa6c726108179bddbe8c">floatIsNormal</a> (double f)</td></tr>
<tr class="memdesc:a2b989cbc1c67fa6c726108179bddbe8c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return true if the value of <em>f</em> is not NaN and is not infinite (+/- INF) <br /></td></tr>
<tr class="separator:a2b989cbc1c67fa6c726108179bddbe8c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0c4d240777628983e66005d7f7a4939c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0c4d240777628983e66005d7f7a4939c"></a>
static FILE *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a0c4d240777628983e66005d7f7a4939c">fopen</a> (const char *path, const char *mode, bool closeOnExec=true)</td></tr>
<tr class="memdesc:a0c4d240777628983e66005d7f7a4939c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Opens a file, defaulting it so that the file will close on exec. <br /></td></tr>
<tr class="separator:a0c4d240777628983e66005d7f7a4939c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5ac5c1c71472c7ab13b6c348d37a3de7"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a5ac5c1c71472c7ab13b6c348d37a3de7">functorPrintf</a> (<a class="el" href="classArFunctor1.html">ArFunctor1</a>&lt; const char * &gt; *functor, const char *formatstr,...)</td></tr>
<tr class="memdesc:a5ac5c1c71472c7ab13b6c348d37a3de7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Invoke a functor with a string generated via sprintf format conversion.  <a href="#a5ac5c1c71472c7ab13b6c348d37a3de7">More...</a><br /></td></tr>
<tr class="separator:a5ac5c1c71472c7ab13b6c348d37a3de7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa7fd04cf84fdc691a1c2b885a1408001"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#aa7fd04cf84fdc691a1c2b885a1408001">functorPrintf</a> (<a class="el" href="classArFunctor1.html">ArFunctor1</a>&lt; const char * &gt; *functor, char *formatstr,...)</td></tr>
<tr class="separator:aa7fd04cf84fdc691a1c2b885a1408001"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2f413a595a99815d60868978116783b7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2f413a595a99815d60868978116783b7"></a>
static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a2f413a595a99815d60868978116783b7">getDirectory</a> (const char *fileName, char *result, size_t resultLen)</td></tr>
<tr class="memdesc:a2f413a595a99815d60868978116783b7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pulls the directory out of a file name. <br /></td></tr>
<tr class="separator:a2f413a595a99815d60868978116783b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6e583e7b62f24bc528c0dd2d30feb36b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6e583e7b62f24bc528c0dd2d30feb36b"></a>
static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a6e583e7b62f24bc528c0dd2d30feb36b">getFileName</a> (const char *fileName, char *result, size_t resultLen)</td></tr>
<tr class="memdesc:a6e583e7b62f24bc528c0dd2d30feb36b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pulls the filename out of the file name. <br /></td></tr>
<tr class="separator:a6e583e7b62f24bc528c0dd2d30feb36b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3b7e81c90d423f4ab45a5ccad3471d5b"><td class="memItemLeft" align="right" valign="top">static char&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a3b7e81c90d423f4ab45a5ccad3471d5b">getSlash</a> ()</td></tr>
<tr class="memdesc:a3b7e81c90d423f4ab45a5ccad3471d5b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the slash (i.e. separator) character for the current platform.  <a href="#a3b7e81c90d423f4ab45a5ccad3471d5b">More...</a><br /></td></tr>
<tr class="separator:a3b7e81c90d423f4ab45a5ccad3471d5b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5a7f7406b64fe46adfb31feecc4dee5d"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a5a7f7406b64fe46adfb31feecc4dee5d">getStringFromFile</a> (const char *fileName, char *str, size_t strLen)</td></tr>
<tr class="memdesc:a5a7f7406b64fe46adfb31feecc4dee5d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets a string contained in an arbitrary file.  <a href="#a5a7f7406b64fe46adfb31feecc4dee5d">More...</a><br /></td></tr>
<tr class="separator:a5a7f7406b64fe46adfb31feecc4dee5d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a844eb4cb2378c04c8fd128327a8603a7"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a844eb4cb2378c04c8fd128327a8603a7">getStringFromRegistry</a> (<a class="el" href="classArUtil.html#a5edb8ea00fead31d95d83a60cc73e7f2">REGKEY</a> root, const char *key, const char *value, char *str, int len)</td></tr>
<tr class="memdesc:a844eb4cb2378c04c8fd128327a8603a7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a string from the Windows registry.  <a href="#a844eb4cb2378c04c8fd128327a8603a7">More...</a><br /></td></tr>
<tr class="separator:a844eb4cb2378c04c8fd128327a8603a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad3496dfd2693d19553a399883a4e20e1"><td class="memItemLeft" align="right" valign="top">static unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#ad3496dfd2693d19553a399883a4e20e1">getTime</a> (void)</td></tr>
<tr class="memdesc:ad3496dfd2693d19553a399883a4e20e1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the time in milliseconds.  <a href="#ad3496dfd2693d19553a399883a4e20e1">More...</a><br /></td></tr>
<tr class="separator:ad3496dfd2693d19553a399883a4e20e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0b9f925549544be43f8da80f28ead05d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0b9f925549544be43f8da80f28ead05d"></a>
static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a0b9f925549544be43f8da80f28ead05d">isOnlyAlphaNumeric</a> (const char *str)</td></tr>
<tr class="memdesc:a0b9f925549544be43f8da80f28ead05d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if this string is only alphanumeric (i.e. it contains only leters and numbers), false if it contains any non alphanumeric characters (punctuation, whitespace, control characters, etc.) <br /></td></tr>
<tr class="separator:a0b9f925549544be43f8da80f28ead05d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af78edf7d12d4e609d639ee774dc96929"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af78edf7d12d4e609d639ee774dc96929"></a>
static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#af78edf7d12d4e609d639ee774dc96929">isOnlyNumeric</a> (const char *str)</td></tr>
<tr class="memdesc:af78edf7d12d4e609d639ee774dc96929"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if this string is only numeric (i.e. it contains only numeric. <br /></td></tr>
<tr class="separator:af78edf7d12d4e609d639ee774dc96929"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aca10655a71490117f5e89378e2a5b533"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aca10655a71490117f5e89378e2a5b533"></a>
static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#aca10655a71490117f5e89378e2a5b533">isStrEmpty</a> (const char *str)</td></tr>
<tr class="memdesc:aca10655a71490117f5e89378e2a5b533"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if the given string is null or of zero length, false otherwise. <br /></td></tr>
<tr class="separator:aca10655a71490117f5e89378e2a5b533"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abbe859dc636bedafbbd46c83a4d4a18d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abbe859dc636bedafbbd46c83a4d4a18d"></a>
static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#abbe859dc636bedafbbd46c83a4d4a18d">isStrInList</a> (const char *str, const std::list&lt; std::string &gt; &amp;list, bool isIgnoreCase=false)</td></tr>
<tr class="memdesc:abbe859dc636bedafbbd46c83a4d4a18d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determines whether the given text is contained in the given list of strings. <br /></td></tr>
<tr class="separator:abbe859dc636bedafbbd46c83a4d4a18d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a40c2583783ed4ce597593e0d3496c1b9"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a40c2583783ed4ce597593e0d3496c1b9">localtime</a> (const time_t *timep, struct tm *result)</td></tr>
<tr class="memdesc:a40c2583783ed4ce597593e0d3496c1b9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Interface to native platform <a class="el" href="classArUtil.html#a40c2583783ed4ce597593e0d3496c1b9" title="Interface to native platform localtime() function. ">localtime()</a> function.  <a href="#a40c2583783ed4ce597593e0d3496c1b9">More...</a><br /></td></tr>
<tr class="separator:a40c2583783ed4ce597593e0d3496c1b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a513dd8e7679a8c1b2e6e51554a981991"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a513dd8e7679a8c1b2e6e51554a981991">localtime</a> (struct tm *result)</td></tr>
<tr class="memdesc:a513dd8e7679a8c1b2e6e51554a981991"><td class="mdescLeft">&#160;</td><td class="mdescRight">Call <a class="el" href="classArUtil.html#a40c2583783ed4ce597593e0d3496c1b9" title="Interface to native platform localtime() function. ">ArUtil::localtime(const time_t*, struct tm *)</a> with the current time obtained by calling time(NULL).  <a href="#a513dd8e7679a8c1b2e6e51554a981991">More...</a><br /></td></tr>
<tr class="separator:a513dd8e7679a8c1b2e6e51554a981991"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a754c3bc37df607f8157dad3521abac5e"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a754c3bc37df607f8157dad3521abac5e">lower</a> (char *dest, const char *src, size_t maxLen)</td></tr>
<tr class="memdesc:a754c3bc37df607f8157dad3521abac5e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Lowers a string from src into dest, make sure there's enough space.  <a href="#a754c3bc37df607f8157dad3521abac5e">More...</a><br /></td></tr>
<tr class="separator:a754c3bc37df607f8157dad3521abac5e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8cacafc1a7171298772f965e94a7c00f"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a8cacafc1a7171298772f965e94a7c00f">matchCase</a> (const char *baseDir, const char *fileName, char *result, size_t resultLen)</td></tr>
<tr class="memdesc:a8cacafc1a7171298772f965e94a7c00f"><td class="mdescLeft">&#160;</td><td class="mdescRight">this matches the case out of what file we want  <a href="#a8cacafc1a7171298772f965e94a7c00f">More...</a><br /></td></tr>
<tr class="separator:a8cacafc1a7171298772f965e94a7c00f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adaca3f102cf711751bee3402dd214cfb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adaca3f102cf711751bee3402dd214cfb"></a>
static double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#adaca3f102cf711751bee3402dd214cfb">metersToFeet</a> (const double m)</td></tr>
<tr class="memdesc:adaca3f102cf711751bee3402dd214cfb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert meters to US feet. <br /></td></tr>
<tr class="separator:adaca3f102cf711751bee3402dd214cfb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a18a4dc980f80dea347f1d7491551bba7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a18a4dc980f80dea347f1d7491551bba7"></a>
static double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a18a4dc980f80dea347f1d7491551bba7">mSecToSec</a> (const double msec)</td></tr>
<tr class="memdesc:a18a4dc980f80dea347f1d7491551bba7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert milliseconds to seconds. <br /></td></tr>
<tr class="separator:a18a4dc980f80dea347f1d7491551bba7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a662965659c0517183ed1162d835bfe40"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a662965659c0517183ed1162d835bfe40"></a>
static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a662965659c0517183ed1162d835bfe40">open</a> (const char *pathname, int flags, bool closeOnExec=true)</td></tr>
<tr class="memdesc:a662965659c0517183ed1162d835bfe40"><td class="mdescLeft">&#160;</td><td class="mdescRight">Opens a file, defaulting it so that the file will close on exec. <br /></td></tr>
<tr class="separator:a662965659c0517183ed1162d835bfe40"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad3404a0caddfc4299c4a9ebb33004f68"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad3404a0caddfc4299c4a9ebb33004f68"></a>
static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#ad3404a0caddfc4299c4a9ebb33004f68">open</a> (const char *pathname, int flags, mode_t mode, bool closeOnExec=true)</td></tr>
<tr class="memdesc:ad3404a0caddfc4299c4a9ebb33004f68"><td class="mdescLeft">&#160;</td><td class="mdescRight">Opens a file, defaulting it so that the file will close on exec. <br /></td></tr>
<tr class="separator:ad3404a0caddfc4299c4a9ebb33004f68"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a151af769c1afe54cf5b25f68d5a049ef"><td class="memItemLeft" align="right" valign="top">static time_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a151af769c1afe54cf5b25f68d5a049ef">parseTime</a> (const char *str, bool *ok=NULL, bool toToday=true)</td></tr>
<tr class="memdesc:a151af769c1afe54cf5b25f68d5a049ef"><td class="mdescLeft">&#160;</td><td class="mdescRight">Parses the given time string (h:mm) and returns the corresponding time.  <a href="#a151af769c1afe54cf5b25f68d5a049ef">More...</a><br /></td></tr>
<tr class="separator:a151af769c1afe54cf5b25f68d5a049ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a17db04bd1d197cdc4ee3048fb2ff183c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a17db04bd1d197cdc4ee3048fb2ff183c"></a>
static FILE *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a17db04bd1d197cdc4ee3048fb2ff183c">popen</a> (const char *command, const char *type, bool closeOnExec=true)</td></tr>
<tr class="memdesc:a17db04bd1d197cdc4ee3048fb2ff183c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Opens a pipe, defaulting it so that the file will close on exec. <br /></td></tr>
<tr class="separator:a17db04bd1d197cdc4ee3048fb2ff183c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7c26ed6c4b24e7bd86d817bd3771e986"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a7c26ed6c4b24e7bd86d817bd3771e986">putCurrentDayInString</a> (char *s, size_t len)</td></tr>
<tr class="memdesc:a7c26ed6c4b24e7bd86d817bd3771e986"><td class="mdescLeft">&#160;</td><td class="mdescRight">Put the current day (GMT) of the month in s (e.g.  <a href="#a7c26ed6c4b24e7bd86d817bd3771e986">More...</a><br /></td></tr>
<tr class="separator:a7c26ed6c4b24e7bd86d817bd3771e986"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aebb76d96041c94145b683e0e1018a807"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#aebb76d96041c94145b683e0e1018a807">putCurrentHourInString</a> (char *s, size_t len)</td></tr>
<tr class="memdesc:aebb76d96041c94145b683e0e1018a807"><td class="mdescLeft">&#160;</td><td class="mdescRight">Put the current hour (GMT) in s (e.g.  <a href="#aebb76d96041c94145b683e0e1018a807">More...</a><br /></td></tr>
<tr class="separator:aebb76d96041c94145b683e0e1018a807"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a76e777a8b67d8af271f4c128b486bf3d"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a76e777a8b67d8af271f4c128b486bf3d">putCurrentMinuteInString</a> (char *s, size_t len)</td></tr>
<tr class="memdesc:a76e777a8b67d8af271f4c128b486bf3d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Put the current minute (GMT) in s (e.g.  <a href="#a76e777a8b67d8af271f4c128b486bf3d">More...</a><br /></td></tr>
<tr class="separator:a76e777a8b67d8af271f4c128b486bf3d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abd53d34341eac7720762fe97474056b2"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#abd53d34341eac7720762fe97474056b2">putCurrentMonthInString</a> (char *s, size_t len)</td></tr>
<tr class="memdesc:abd53d34341eac7720762fe97474056b2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Put the current month (GMT) in s (e.g.  <a href="#abd53d34341eac7720762fe97474056b2">More...</a><br /></td></tr>
<tr class="separator:abd53d34341eac7720762fe97474056b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a96e45e795111480fa44b53d69d51bfbd"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a96e45e795111480fa44b53d69d51bfbd">putCurrentSecondInString</a> (char *s, size_t len)</td></tr>
<tr class="memdesc:a96e45e795111480fa44b53d69d51bfbd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Put the current second (GMT) in s (e.g.  <a href="#a96e45e795111480fa44b53d69d51bfbd">More...</a><br /></td></tr>
<tr class="separator:a96e45e795111480fa44b53d69d51bfbd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6176b06a59bff3126b91e60863a95e65"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a6176b06a59bff3126b91e60863a95e65">putCurrentYearInString</a> (char *s, size_t len)</td></tr>
<tr class="memdesc:a6176b06a59bff3126b91e60863a95e65"><td class="mdescLeft">&#160;</td><td class="mdescRight">Put the current year (GMT) in s (e.g.  <a href="#a6176b06a59bff3126b91e60863a95e65">More...</a><br /></td></tr>
<tr class="separator:a6176b06a59bff3126b91e60863a95e65"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a50fbd83a487dcf92689596c05e552533"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a50fbd83a487dcf92689596c05e552533"></a>
static double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a50fbd83a487dcf92689596c05e552533">secToMSec</a> (const double sec)</td></tr>
<tr class="memdesc:a50fbd83a487dcf92689596c05e552533"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert seconds to milliseconds. <br /></td></tr>
<tr class="separator:a50fbd83a487dcf92689596c05e552533"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2270328994403a3d1927c5b5c4da5725"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2270328994403a3d1927c5b5c4da5725"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a2270328994403a3d1927c5b5c4da5725">setFileCloseOnExec</a> (int fd, bool closeOnExec=true)</td></tr>
<tr class="memdesc:a2270328994403a3d1927c5b5c4da5725"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets if the file descriptor will be closed on exec or not. <br /></td></tr>
<tr class="separator:a2270328994403a3d1927c5b5c4da5725"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a57c41bd83231483e3406544a5ee76206"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a57c41bd83231483e3406544a5ee76206"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a57c41bd83231483e3406544a5ee76206">setFileCloseOnExec</a> (FILE *file, bool closeOnExec=true)</td></tr>
<tr class="memdesc:a57c41bd83231483e3406544a5ee76206"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets if the file descriptor will be closed on exec or not. <br /></td></tr>
<tr class="separator:a57c41bd83231483e3406544a5ee76206"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7674efc30afe02fb0cd37d773469ca2c"><td class="memItemLeft" align="right" valign="top">static long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a7674efc30afe02fb0cd37d773469ca2c">sizeFile</a> (const char *fileName)</td></tr>
<tr class="memdesc:a7674efc30afe02fb0cd37d773469ca2c"><td class="mdescLeft">&#160;</td><td class="mdescRight">OS-independent way of finding the size of a file.  <a href="#a7674efc30afe02fb0cd37d773469ca2c">More...</a><br /></td></tr>
<tr class="separator:a7674efc30afe02fb0cd37d773469ca2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab9cc6e5071290a9dd66f79e25b6deb40"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab9cc6e5071290a9dd66f79e25b6deb40"></a>
static long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#ab9cc6e5071290a9dd66f79e25b6deb40">sizeFile</a> (std::string fileName)</td></tr>
<tr class="memdesc:ab9cc6e5071290a9dd66f79e25b6deb40"><td class="mdescLeft">&#160;</td><td class="mdescRight">OS-independent way of finding the size of a file. <br /></td></tr>
<tr class="separator:ab9cc6e5071290a9dd66f79e25b6deb40"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4dfb878a3f9123b8dd96ae05b2fd94cb"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__easy.html#ga4dfb878a3f9123b8dd96ae05b2fd94cb">sleep</a> (unsigned int ms)</td></tr>
<tr class="memdesc:ga4dfb878a3f9123b8dd96ae05b2fd94cb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sleep for the given number of milliseconds.  <a href="group__easy.html#ga4dfb878a3f9123b8dd96ae05b2fd94cb">More...</a><br /></td></tr>
<tr class="separator:ga4dfb878a3f9123b8dd96ae05b2fd94cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab17364ae21df36b1d11942bc5d75b074"><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#ab17364ae21df36b1d11942bc5d75b074">strcasecmp</a> (const std::string &amp;str, const std::string &amp;str2)</td></tr>
<tr class="memdesc:ab17364ae21df36b1d11942bc5d75b074"><td class="mdescLeft">&#160;</td><td class="mdescRight">Finds out if two strings are equal (ignoring case)  <a href="#ab17364ae21df36b1d11942bc5d75b074">More...</a><br /></td></tr>
<tr class="separator:ab17364ae21df36b1d11942bc5d75b074"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1951f269b99ad3b320c70d286122d5d3"><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a1951f269b99ad3b320c70d286122d5d3">strcasecmp</a> (const std::string &amp;str, const char *str2)</td></tr>
<tr class="memdesc:a1951f269b99ad3b320c70d286122d5d3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Finds out if two strings are equal (ignoring case)  <a href="#a1951f269b99ad3b320c70d286122d5d3">More...</a><br /></td></tr>
<tr class="separator:a1951f269b99ad3b320c70d286122d5d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae497bcb1f1fe95750aa942c6e54bdf23"><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#ae497bcb1f1fe95750aa942c6e54bdf23">strcasecmp</a> (const char *str, const std::string &amp;str2)</td></tr>
<tr class="memdesc:ae497bcb1f1fe95750aa942c6e54bdf23"><td class="mdescLeft">&#160;</td><td class="mdescRight">Finds out if two strings are equal (ignoring case)  <a href="#ae497bcb1f1fe95750aa942c6e54bdf23">More...</a><br /></td></tr>
<tr class="separator:ae497bcb1f1fe95750aa942c6e54bdf23"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af071db74ee72c55afbe07d26b801afdb"><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#af071db74ee72c55afbe07d26b801afdb">strcasecmp</a> (const char *str, const char *str2)</td></tr>
<tr class="memdesc:af071db74ee72c55afbe07d26b801afdb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Finds out if two strings are equal (ignoring case)  <a href="#af071db74ee72c55afbe07d26b801afdb">More...</a><br /></td></tr>
<tr class="separator:af071db74ee72c55afbe07d26b801afdb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aef5b8a681b6c906ecc8b2cd5660925ad"><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#aef5b8a681b6c906ecc8b2cd5660925ad">strcasequotecmp</a> (const std::string &amp;str1, const std::string &amp;str2)</td></tr>
<tr class="memdesc:aef5b8a681b6c906ecc8b2cd5660925ad"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compares two strings (ignoring case and surrounding quotes)  <a href="#aef5b8a681b6c906ecc8b2cd5660925ad">More...</a><br /></td></tr>
<tr class="separator:aef5b8a681b6c906ecc8b2cd5660925ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a35643715dec6e4e781d6b14f9bb18dc6"><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a35643715dec6e4e781d6b14f9bb18dc6">strcmp</a> (const std::string &amp;str, const std::string &amp;str2)</td></tr>
<tr class="memdesc:a35643715dec6e4e781d6b14f9bb18dc6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Finds out if two strings are equal.  <a href="#a35643715dec6e4e781d6b14f9bb18dc6">More...</a><br /></td></tr>
<tr class="separator:a35643715dec6e4e781d6b14f9bb18dc6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa3a3c3e93c9de270d85201f6f6f5f982"><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#aa3a3c3e93c9de270d85201f6f6f5f982">strcmp</a> (const std::string &amp;str, const char *str2)</td></tr>
<tr class="memdesc:aa3a3c3e93c9de270d85201f6f6f5f982"><td class="mdescLeft">&#160;</td><td class="mdescRight">Finds out if two strings are equal.  <a href="#aa3a3c3e93c9de270d85201f6f6f5f982">More...</a><br /></td></tr>
<tr class="separator:aa3a3c3e93c9de270d85201f6f6f5f982"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2d79ca41ffb02f2a40c1385de5661f3f"><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a2d79ca41ffb02f2a40c1385de5661f3f">strcmp</a> (const char *str, const std::string &amp;str2)</td></tr>
<tr class="memdesc:a2d79ca41ffb02f2a40c1385de5661f3f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Finds out if two strings are equal.  <a href="#a2d79ca41ffb02f2a40c1385de5661f3f">More...</a><br /></td></tr>
<tr class="separator:a2d79ca41ffb02f2a40c1385de5661f3f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0027579e9a503b09c30e49505aa311de"><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a0027579e9a503b09c30e49505aa311de">strcmp</a> (const char *str, const char *str2)</td></tr>
<tr class="memdesc:a0027579e9a503b09c30e49505aa311de"><td class="mdescLeft">&#160;</td><td class="mdescRight">Finds out if two strings are equal.  <a href="#a0027579e9a503b09c30e49505aa311de">More...</a><br /></td></tr>
<tr class="separator:a0027579e9a503b09c30e49505aa311de"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a16d283861f64d1afb59005fd1213a8f6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a16d283861f64d1afb59005fd1213a8f6"></a>
static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a16d283861f64d1afb59005fd1213a8f6">stripQuotes</a> (char *dest, const char *src, size_t destLen)</td></tr>
<tr class="memdesc:a16d283861f64d1afb59005fd1213a8f6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Strips out the quotes in the src buffer into the dest buffer. <br /></td></tr>
<tr class="separator:a16d283861f64d1afb59005fd1213a8f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af910983b55521a60d39602d1964df7a8"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#af910983b55521a60d39602d1964df7a8">stripQuotes</a> (std::string *strToStrip)</td></tr>
<tr class="memdesc:af910983b55521a60d39602d1964df7a8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Strips the quotes from the given string.  <a href="#af910983b55521a60d39602d1964df7a8">More...</a><br /></td></tr>
<tr class="separator:af910983b55521a60d39602d1964df7a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afab4ae5be002e0c005692e060175bed8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afab4ae5be002e0c005692e060175bed8"></a>
static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#afab4ae5be002e0c005692e060175bed8">strSuffixCaseCmp</a> (const char *str, const char *suffix)</td></tr>
<tr class="memdesc:afab4ae5be002e0c005692e060175bed8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Finds out if a string has a suffix. <br /></td></tr>
<tr class="separator:afab4ae5be002e0c005692e060175bed8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a46f4760389fe6b2cbd84ac5af1fbd8f4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a46f4760389fe6b2cbd84ac5af1fbd8f4"></a>
static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a46f4760389fe6b2cbd84ac5af1fbd8f4">strSuffixCmp</a> (const char *str, const char *suffix)</td></tr>
<tr class="memdesc:a46f4760389fe6b2cbd84ac5af1fbd8f4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Finds out if a string has a suffix. <br /></td></tr>
<tr class="separator:a46f4760389fe6b2cbd84ac5af1fbd8f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6083b91ab76bc97401bfb902a2b51c0c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6083b91ab76bc97401bfb902a2b51c0c"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a6083b91ab76bc97401bfb902a2b51c0c">writeToFile</a> (const char *str, FILE *file)</td></tr>
<tr class="memdesc:a6083b91ab76bc97401bfb902a2b51c0c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function for doing a fprintf to a file (here to make a functor for) <br /></td></tr>
<tr class="separator:a6083b91ab76bc97401bfb902a2b51c0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-attribs"></a>
Static Public Attributes</h2></td></tr>
<tr class="memitem:a55c1a819493603958b733b516065ddca"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a55c1a819493603958b733b516065ddca"></a>
static const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a55c1a819493603958b733b516065ddca">COM1</a> = &quot;/dev/ttyS0&quot;</td></tr>
<tr class="memdesc:a55c1a819493603958b733b516065ddca"><td class="mdescLeft">&#160;</td><td class="mdescRight">First serial port device name (value depends on compilation platform) <br /></td></tr>
<tr class="separator:a55c1a819493603958b733b516065ddca"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ade830770ba01aac6e9b3d9874a7666f9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ade830770ba01aac6e9b3d9874a7666f9"></a>
static const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#ade830770ba01aac6e9b3d9874a7666f9">COM10</a> = &quot;/dev/ttyS9&quot;</td></tr>
<tr class="memdesc:ade830770ba01aac6e9b3d9874a7666f9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tenth serial port device name (value depends on compilation platform) <br /></td></tr>
<tr class="separator:ade830770ba01aac6e9b3d9874a7666f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac83a0a5e65db657513699f54f3443d04"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac83a0a5e65db657513699f54f3443d04"></a>
static const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#ac83a0a5e65db657513699f54f3443d04">COM11</a> = &quot;/dev/ttyS10&quot;</td></tr>
<tr class="memdesc:ac83a0a5e65db657513699f54f3443d04"><td class="mdescLeft">&#160;</td><td class="mdescRight">Eleventh serial port device name (value depends on compilation platform) <br /></td></tr>
<tr class="separator:ac83a0a5e65db657513699f54f3443d04"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad710de074a77796717c3e1402f7fb561"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad710de074a77796717c3e1402f7fb561"></a>
static const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#ad710de074a77796717c3e1402f7fb561">COM12</a> = &quot;/dev/ttyS11&quot;</td></tr>
<tr class="memdesc:ad710de074a77796717c3e1402f7fb561"><td class="mdescLeft">&#160;</td><td class="mdescRight">Twelth serial port device name (value depends on compilation platform) <br /></td></tr>
<tr class="separator:ad710de074a77796717c3e1402f7fb561"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa665c4ccc7b77a4f76996395462e427d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa665c4ccc7b77a4f76996395462e427d"></a>
static const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#aa665c4ccc7b77a4f76996395462e427d">COM13</a> = &quot;/dev/ttyS12&quot;</td></tr>
<tr class="memdesc:aa665c4ccc7b77a4f76996395462e427d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Thirteenth serial port device name (value depends on compilation platform) <br /></td></tr>
<tr class="separator:aa665c4ccc7b77a4f76996395462e427d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afe39158eef2a9c1692435ef35fbb347b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afe39158eef2a9c1692435ef35fbb347b"></a>
static const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#afe39158eef2a9c1692435ef35fbb347b">COM14</a> = &quot;/dev/ttyS13&quot;</td></tr>
<tr class="memdesc:afe39158eef2a9c1692435ef35fbb347b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fourteenth serial port device name (value depends on compilation platform) <br /></td></tr>
<tr class="separator:afe39158eef2a9c1692435ef35fbb347b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae2a6a3218c49d1907a2c7c747c17fcd8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae2a6a3218c49d1907a2c7c747c17fcd8"></a>
static const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#ae2a6a3218c49d1907a2c7c747c17fcd8">COM15</a> = &quot;/dev/ttyS14&quot;</td></tr>
<tr class="memdesc:ae2a6a3218c49d1907a2c7c747c17fcd8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fifteenth serial port device name (value depends on compilation platform) <br /></td></tr>
<tr class="separator:ae2a6a3218c49d1907a2c7c747c17fcd8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a49b2caa20ab69334bb1ca18069fef241"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a49b2caa20ab69334bb1ca18069fef241"></a>
static const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a49b2caa20ab69334bb1ca18069fef241">COM16</a> = &quot;/dev/ttyS15&quot;</td></tr>
<tr class="memdesc:a49b2caa20ab69334bb1ca18069fef241"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sixteenth serial port device name (value depends on compilation platform) <br /></td></tr>
<tr class="separator:a49b2caa20ab69334bb1ca18069fef241"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae4b816acd32958a825f179c199e10155"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae4b816acd32958a825f179c199e10155"></a>
static const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#ae4b816acd32958a825f179c199e10155">COM2</a> = &quot;/dev/ttyS1&quot;</td></tr>
<tr class="memdesc:ae4b816acd32958a825f179c199e10155"><td class="mdescLeft">&#160;</td><td class="mdescRight">Second serial port device name (value depends on compilation platform) <br /></td></tr>
<tr class="separator:ae4b816acd32958a825f179c199e10155"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a32000b7eb4342c9b94728ef372ba6b44"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a32000b7eb4342c9b94728ef372ba6b44"></a>
static const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a32000b7eb4342c9b94728ef372ba6b44">COM3</a> = &quot;/dev/ttyS2&quot;</td></tr>
<tr class="memdesc:a32000b7eb4342c9b94728ef372ba6b44"><td class="mdescLeft">&#160;</td><td class="mdescRight">Third serial port device name (value depends on compilation platform) <br /></td></tr>
<tr class="separator:a32000b7eb4342c9b94728ef372ba6b44"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6be33894b08edc59d364f8069c6bf86d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6be33894b08edc59d364f8069c6bf86d"></a>
static const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a6be33894b08edc59d364f8069c6bf86d">COM4</a> = &quot;/dev/ttyS3&quot;</td></tr>
<tr class="memdesc:a6be33894b08edc59d364f8069c6bf86d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fourth serial port device name (value depends on compilation platform) <br /></td></tr>
<tr class="separator:a6be33894b08edc59d364f8069c6bf86d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a54d18b0ca1fe5e3636a2b268e8e90817"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a54d18b0ca1fe5e3636a2b268e8e90817"></a>
static const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a54d18b0ca1fe5e3636a2b268e8e90817">COM5</a> = &quot;/dev/ttyS4&quot;</td></tr>
<tr class="memdesc:a54d18b0ca1fe5e3636a2b268e8e90817"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fifth serial port device name (value depends on compilation platform) <br /></td></tr>
<tr class="separator:a54d18b0ca1fe5e3636a2b268e8e90817"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a89076fea55d0de539b22a026d282c8b7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a89076fea55d0de539b22a026d282c8b7"></a>
static const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a89076fea55d0de539b22a026d282c8b7">COM6</a> = &quot;/dev/ttyS5&quot;</td></tr>
<tr class="memdesc:a89076fea55d0de539b22a026d282c8b7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sixth serial port device name (value depends on compilation platform) <br /></td></tr>
<tr class="separator:a89076fea55d0de539b22a026d282c8b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6b0ed2dcb7ba258f6d6ecc336854498e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6b0ed2dcb7ba258f6d6ecc336854498e"></a>
static const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a6b0ed2dcb7ba258f6d6ecc336854498e">COM7</a> = &quot;/dev/ttyS6&quot;</td></tr>
<tr class="memdesc:a6b0ed2dcb7ba258f6d6ecc336854498e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Seventh serial port device name (value depends on compilation platform) <br /></td></tr>
<tr class="separator:a6b0ed2dcb7ba258f6d6ecc336854498e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6b63d1d15acf8368ece481497cf72e50"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6b63d1d15acf8368ece481497cf72e50"></a>
static const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#a6b63d1d15acf8368ece481497cf72e50">COM8</a> = &quot;/dev/ttyS7&quot;</td></tr>
<tr class="memdesc:a6b63d1d15acf8368ece481497cf72e50"><td class="mdescLeft">&#160;</td><td class="mdescRight">Eighth serial port device name (value depends on compilation platform) <br /></td></tr>
<tr class="separator:a6b63d1d15acf8368ece481497cf72e50"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab4ff7b31d43b495ccaf4c080de56576f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab4ff7b31d43b495ccaf4c080de56576f"></a>
static const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#ab4ff7b31d43b495ccaf4c080de56576f">COM9</a> = &quot;/dev/ttyS8&quot;</td></tr>
<tr class="memdesc:ab4ff7b31d43b495ccaf4c080de56576f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Ninth serial port device name (value depends on compilation platform) <br /></td></tr>
<tr class="separator:ab4ff7b31d43b495ccaf4c080de56576f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae7dfc63857b6667df01d7afcb51aa78a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae7dfc63857b6667df01d7afcb51aa78a"></a>
static const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#ae7dfc63857b6667df01d7afcb51aa78a">FALSESTRING</a> = &quot;false&quot;</td></tr>
<tr class="memdesc:ae7dfc63857b6667df01d7afcb51aa78a"><td class="mdescLeft">&#160;</td><td class="mdescRight">"false" <br /></td></tr>
<tr class="separator:ae7dfc63857b6667df01d7afcb51aa78a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa94be28712404c59fb0268e81b7b6bdf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa94be28712404c59fb0268e81b7b6bdf"></a>
static const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#aa94be28712404c59fb0268e81b7b6bdf">TRUESTRING</a> = &quot;true&quot;</td></tr>
<tr class="memdesc:aa94be28712404c59fb0268e81b7b6bdf"><td class="mdescLeft">&#160;</td><td class="mdescRight">"true" <br /></td></tr>
<tr class="separator:aa94be28712404c59fb0268e81b7b6bdf"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-static-methods"></a>
Static Protected Member Functions</h2></td></tr>
<tr class="memitem:ae14ccc824edc9460821dc4fbb99926b1"><td class="memItemLeft" align="right" valign="top">static std::list&lt; std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classArUtil.html#ae14ccc824edc9460821dc4fbb99926b1">splitFileName</a> (const char *fileName)</td></tr>
<tr class="memdesc:ae14ccc824edc9460821dc4fbb99926b1"><td class="mdescLeft">&#160;</td><td class="mdescRight">this splits up a file name (it isn't exported since it'd crash with dlls)  <a href="#ae14ccc824edc9460821dc4fbb99926b1">More...</a><br /></td></tr>
<tr class="separator:ae14ccc824edc9460821dc4fbb99926b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Contains various utility functions, including cross-platform wrappers around common system functions. </p>
</div><h2 class="groupheader">Member Enumeration Documentation</h2>
<a class="anchor" id="a8dbaef80af16916fe5647dff5092fdad"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="classArUtil.html#a8dbaef80af16916fe5647dff5092fdad">ArUtil::BITS</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Values for the bits from 0 to 16. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a8dbaef80af16916fe5647dff5092fdada0554099ded8f4dc4683cfa1b6e0ba776"></a>BIT0&#160;</td><td class="fielddoc">
<p>value of BIT0 </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a8dbaef80af16916fe5647dff5092fdadabb1338bd9284d6d2ebca223079214804"></a>BIT1&#160;</td><td class="fielddoc">
<p>value of BIT1 </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a8dbaef80af16916fe5647dff5092fdadae0d67fd8e939d54812b02d1a728c5075"></a>BIT2&#160;</td><td class="fielddoc">
<p>value of BIT2 </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a8dbaef80af16916fe5647dff5092fdada261df8c57cdaedbf6ee9e4ccbb1b912f"></a>BIT3&#160;</td><td class="fielddoc">
<p>value of BIT3 </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a8dbaef80af16916fe5647dff5092fdada52fc916728fb37dd1a26bd3e8a75f1ca"></a>BIT4&#160;</td><td class="fielddoc">
<p>value of BIT4 </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a8dbaef80af16916fe5647dff5092fdadae59af3ca97f6a3261b2a0d9e07782f91"></a>BIT5&#160;</td><td class="fielddoc">
<p>value of BIT5 </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a8dbaef80af16916fe5647dff5092fdadadea62434f4ba9103a4bda5be5b97fa86"></a>BIT6&#160;</td><td class="fielddoc">
<p>value of BIT6 </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a8dbaef80af16916fe5647dff5092fdadad3530ac1d8686c6a24f969f714a051a4"></a>BIT7&#160;</td><td class="fielddoc">
<p>value of BIT7 </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a8dbaef80af16916fe5647dff5092fdadae1b699aa174bb379f2d80fdc37886d9f"></a>BIT8&#160;</td><td class="fielddoc">
<p>value of BIT8 </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a8dbaef80af16916fe5647dff5092fdada8b7f8130c6f38d9f4cea32904e83e61a"></a>BIT9&#160;</td><td class="fielddoc">
<p>value of BIT9 </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a8dbaef80af16916fe5647dff5092fdada00a8d55d6bcd015ac7fdcd2b337e9c24"></a>BIT10&#160;</td><td class="fielddoc">
<p>value of BIT10 </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a8dbaef80af16916fe5647dff5092fdada9a33aebaedff8c97ed9c0a2fbdd27e7b"></a>BIT11&#160;</td><td class="fielddoc">
<p>value of BIT11 </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a8dbaef80af16916fe5647dff5092fdada3cbd80e0aaae949343225fb766222ac9"></a>BIT12&#160;</td><td class="fielddoc">
<p>value of BIT12 </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a8dbaef80af16916fe5647dff5092fdada8d450816c7f4188ed522a95cac35f159"></a>BIT13&#160;</td><td class="fielddoc">
<p>value of BIT13 </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a8dbaef80af16916fe5647dff5092fdada6bc0449909f5dcabfa7d24ada336ff83"></a>BIT14&#160;</td><td class="fielddoc">
<p>value of BIT14 </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a8dbaef80af16916fe5647dff5092fdadaa8eebcbae86c6b4dc7ddbf3a23546a24"></a>BIT15&#160;</td><td class="fielddoc">
<p>value of BIT15 </p>
</td></tr>
</table>

</div>
</div>
<a class="anchor" id="a5edb8ea00fead31d95d83a60cc73e7f2"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="classArUtil.html#a5edb8ea00fead31d95d83a60cc73e7f2">ArUtil::REGKEY</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>These are for passing into getStringFromRegistry. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a5edb8ea00fead31d95d83a60cc73e7f2a5b8122b7c83189f317b0534c0dcffbdd"></a>REGKEY_CLASSES_ROOT&#160;</td><td class="fielddoc">
<p>use HKEY_CLASSES_ROOT </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a5edb8ea00fead31d95d83a60cc73e7f2ae08e882a7d114c155065fe8ac6f4e2e8"></a>REGKEY_CURRENT_CONFIG&#160;</td><td class="fielddoc">
<p>use HKEY_CURRENT_CONFIG </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a5edb8ea00fead31d95d83a60cc73e7f2a59190c42ab4b188994502cc486825faa"></a>REGKEY_CURRENT_USER&#160;</td><td class="fielddoc">
<p>use HKEY_CURRENT_USER </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a5edb8ea00fead31d95d83a60cc73e7f2a2b29dab942e7b0ea37aa9ead982c9124"></a>REGKEY_LOCAL_MACHINE&#160;</td><td class="fielddoc">
<p>use HKEY_LOCAL_MACHINE </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a5edb8ea00fead31d95d83a60cc73e7f2a7e59b9a94e1dfe79838de668c9061b6e"></a>REGKEY_USERS&#160;</td><td class="fielddoc">
<p>use HKEY_USERS </p>
</td></tr>
</table>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a196eae227f3e6fc7387bb623b4ddea03"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArUtil::addDirectories </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>dest</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>destLength</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>baseDir</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>insideDir</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Adds two directories, taking care of all slash issues. </p>
<p>This function will take the <em>baseDir</em> and add <em>insideDir</em> after it, separated by appropriate directory path separators for this platform, with a final directory separator retained or added after <em>inside</em> dir.</p>
<p>For example on Linux, this results in 'baseDir/insideDir/', whereas backslashes are used on Windows instead. The resulting string is placed in the <em>dest</em> buffer (the path string will be truncated if there is not enough space in <em>dest</em> according to <em>destLength</em>)</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">dest</td><td>the place to put the result </td></tr>
    <tr><td class="paramname">destLength</td><td>the length available in <em>dest</em> </td></tr>
    <tr><td class="paramname">baseDir</td><td>the directory to start with </td></tr>
    <tr><td class="paramname">insideDir</td><td>the directory to place after the baseDir </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="acd8e6fd8ab58feaf25fd1eef4376306d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArUtil::appendSlash </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>path</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>pathLength</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Appends a slash to a path if there is not one there already. </p>
<p>Append a directory separator character to the given path string, depending on the platform.</p>
<p>On Windows, a backslash ('\') is added. On other platforms, a forward slash ('/') is appended. If there is no more allocated space in the path string (as given by the </p><ul>
<li>pathLength parameter), no character will be appended. <dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">path</td><td>the path string to append a slash to </td></tr>
    <tr><td class="paramname">pathLength</td><td>maximum length allocated for path string </td></tr>
  </table>
  </dd>
</dl>
</li>
</ul>

</div>
</div>
<a class="anchor" id="a602e82940dc83918d42fa74952773592"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArUtil::appendSlash </td>
          <td>(</td>
          <td class="paramtype">std::string &amp;&#160;</td>
          <td class="paramname"><em>path</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Appends a slash to the given string path if necessary. </p>
<p>Append the appropriate directory separator for this platform (a forward slash "/" on Linux, or a backslash "\" on Windows) to.</p>
<ul>
<li>path. </li>
</ul>

</div>
</div>
<a class="anchor" id="a6b5f17df33bafc1882eb3d5f519e1200"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static void ArUtil::deleteSet </td>
          <td>(</td>
          <td class="paramtype">T&#160;</td>
          <td class="paramname"><em>begin</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">T&#160;</td>
          <td class="paramname"><em>end</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Delete all members of a set. Does NOT empty the set. </p>
<p>Assumes that T is an iterator that supports the operator*, operator!= and operator++. The return is assumed to be a pointer to a class that needs to be deleted. </p>

</div>
</div>
<a class="anchor" id="a2d327400c6ebecc3b6f1c2ce35df1c74"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static void ArUtil::deleteSetPairs </td>
          <td>(</td>
          <td class="paramtype">T&#160;</td>
          <td class="paramname"><em>begin</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">T&#160;</td>
          <td class="paramname"><em>end</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Delete all members of a set. Does NOT empty the set. </p>
<p>Assumes that T is an iterator that supports the operator**, operator!= and operator++. The return is assumed to be a pair. The second value of the pair is assumed to be a pointer to a class that needs to be deleted. </p>

</div>
</div>
<a class="anchor" id="a99293bdfc662ba9afe57a9576a23941d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArUtil::escapeSpaces </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>dest</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>src</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>maxLen</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Puts a \ before spaces in src, puts it into dest. </p>
<p>This copies src into dest but puts a \ before any spaces in src, escaping them...</p>
<p>its mostly for use with <a class="el" href="classArArgumentBuilder.html" title="This class is to build arguments for things that require argc and argv. ">ArArgumentBuilder</a>... make sure you have at least maxLen spaces in the arrays that you're passing as dest... this allocates no memory </p>

</div>
</div>
<a class="anchor" id="a731729868fac7cf87c9894fe024f8a6c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArUtil::findFile </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>fileName</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>OS-independent way of checking to see if a file exists and is readable. </p>
<dl class="section return"><dt>Returns</dt><dd>true if file is found </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">fileName</td><td>name of the file to size </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a780b9f50e6181679a1e60105a7edccbb"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArUtil::fixBadCharacters </td>
          <td>(</td>
          <td class="paramtype">std::string *&#160;</td>
          <td class="paramname"><em>strToFix</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>removeSpaces</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>fixOtherWhiteSpace</em> = <code>true</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Fixes the bad characters in the given string. </p>
<p>This method strips out bad characters. </p>

</div>
</div>
<a class="anchor" id="a891a7c83c2f48b4acf9d7206247bbda8"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArUtil::fixSlashes </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>path</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>pathLength</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Fix the slash orientation in file path string for windows or linux. </p>
<p>Replace in <em>path</em> all incorrect directory separators for this platform with the correct directory separator character (forward slash '/' on Linux, backslash '\' on Windows).</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">path</td><td>the path in which to fix the orientation of the slashes </td></tr>
    <tr><td class="paramname">pathLength</td><td>the maximum length of path </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ac03aa9478d9b406f63f4581ea6d22082"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArUtil::fixSlashes </td>
          <td>(</td>
          <td class="paramtype">std::string &amp;&#160;</td>
          <td class="paramname"><em>path</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Fixes the slash orientation in the given file path string for the current platform. </p>
<p>Replace in <em>path</em> all incorrect directory separators for this platform with the correct directory separator character (forward slash '/' on Linux, backslash '\' on Windows).</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">path</td><td>the path in which to fix the orientation of the slashes </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="abb7835bb32013eff18fa8f9c9be4f166"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArUtil::fixSlashesBackward </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>path</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>pathLength</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Fix the slash orientation in file path string to be all backward. </p>
<p>Replace any forward slash charactars ('/') in <em>path</em> with backslashes ('\').</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">path</td><td>the path in which to fix the orientation of the slashes </td></tr>
    <tr><td class="paramname">pathLength</td><td>size of <em>path</em> </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a0f3450a5c8fc6730c8d568aac611d7a8"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArUtil::fixSlashesForward </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>path</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>pathLength</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Fix the slash orientation in file path string to be all forward. </p>
<p>Replace any forward slash charactars ('/') in <em>path</em> with backslashes ('\').</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">path</td><td>the path in which to fix the orientation of the slashes </td></tr>
    <tr><td class="paramname">pathLength</td><td>size of <em>path</em> </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a5ac5c1c71472c7ab13b6c348d37a3de7"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArUtil::functorPrintf </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classArFunctor1.html">ArFunctor1</a>&lt; const char * &gt; *&#160;</td>
          <td class="paramname"><em>functor</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>formatstr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Invoke a functor with a string generated via sprintf format conversion. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">functor</td><td>The functor to invoke with the formatted string </td></tr>
    <tr><td class="paramname">formatstr</td><td>The format string into which additional argument values are inserted using vsnprintf() </td></tr>
    <tr><td class="paramname">...</td><td>Additional arguments are values to interpolate into <em>formatstr</em> to generate the final string passed as the argument in the functor invocation. </td></tr>
  </table>
  </dd>
</dl>
<p><b>Java and Python Wrappers:</b> Not available in Java or Python wrapper libraries. </p>

</div>
</div>
<a class="anchor" id="aa7fd04cf84fdc691a1c2b885a1408001"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArUtil::functorPrintf </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classArFunctor1.html">ArFunctor1</a>&lt; const char * &gt; *&#160;</td>
          <td class="paramname"><em>functor</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>formatstr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000032">Deprecated:</a></b></dt><dd>format string should be a const char* </dd></dl>

</div>
</div>
<a class="anchor" id="a3b7e81c90d423f4ab45a5ccad3471d5b"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">char ArUtil::getSlash </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Returns the slash (i.e. separator) character for the current platform. </p>
<p>What is the appropriate directory path separator character for this platform? </p>

</div>
</div>
<a class="anchor" id="a5a7f7406b64fe46adfb31feecc4dee5d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArUtil::getStringFromFile </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>fileName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>str</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>strLen</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Gets a string contained in an arbitrary file. </p>
<p>This function reads a string from a file.</p>
<p>The file can contain spaces or tabs, but a '\r' or '\n' will be treated as the end of the string, and the string cannot have more characters than the value given by strLen. This is mostly for internal use with Linux to determine the <a class="el" href="classAria.html" title="Contains global initialization, deinitialization and other global functions. ">Aria</a> directory from a file in /etc, but will work with Linux or Windows.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">fileName</td><td>name of the file in which to look </td></tr>
    <tr><td class="paramname">str</td><td>the string to copy the file contents into </td></tr>
    <tr><td class="paramname">strLen</td><td>the maximum allocated length of str </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a844eb4cb2378c04c8fd128327a8603a7"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArUtil::getStringFromRegistry </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classArUtil.html#a5edb8ea00fead31d95d83a60cc73e7f2">REGKEY</a>&#160;</td>
          <td class="paramname"><em>root</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>key</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>value</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>str</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Returns a string from the Windows registry. </p>
<p>Look up the given value under the given key, within the given registry root key.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">root</td><td>the root key to use, one of the REGKEY enum values</td></tr>
    <tr><td class="paramname">key</td><td>the name of the key to find</td></tr>
    <tr><td class="paramname">value</td><td>the value name in which to find the string</td></tr>
    <tr><td class="paramname">str</td><td>where to put the string found, or if it could not be found, an empty (length() == 0) string</td></tr>
    <tr><td class="paramname">len</td><td>the length of the allocated memory in str</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if the string was found, false if it was not found or if there was a problem such as the string not being long enough </dd></dl>

</div>
</div>
<a class="anchor" id="ad3496dfd2693d19553a399883a4e20e1"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int ArUtil::getTime </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Get the time in milliseconds. </p>
<p>Get the time in milliseconds, counting from some arbitrary point.</p>
<p>This time is only valid within this run of the program, it does not represent "time of day". In other words, values returned by <a class="el" href="classArUtil.html#ad3496dfd2693d19553a399883a4e20e1" title="Get the time in milliseconds. ">getTime()</a> may be compared to each other within the same run time of a program. If ARIA was compiled on Linux with POSIX monotonic clock functions available, and the current running Linux kernel supports the monotonic clock, then the clock_gettime() function is used with the CLOCK_MONOTONIC option (this is an accurate clock that is robust against e.g. changes to the system time, etc.). Otherwise, gettimeofday() is used instead. Programs using ARIA on Linux must therefore link to the librt library (with -lrt) as well as libAria. On Windows, the timeGetTime() function is used from the winmm library &ndash; this means programs using ARIA on Windows must be linked to the winmm.lib library as well as ARIA. </p><dl class="section return"><dt>Returns</dt><dd>millisecond time </dd></dl>

</div>
</div>
<a class="anchor" id="a40c2583783ed4ce597593e0d3496c1b9"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArUtil::localtime </td>
          <td>(</td>
          <td class="paramtype">const time_t *&#160;</td>
          <td class="paramname"><em>timep</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">struct tm *&#160;</td>
          <td class="paramname"><em>result</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Interface to native platform <a class="el" href="classArUtil.html#a40c2583783ed4ce597593e0d3496c1b9" title="Interface to native platform localtime() function. ">localtime()</a> function. </p>
<p>On Linux, this is equivalent to a call to localtime_r(<em>timep</em>, <em>result</em>) (which is threadsafe, including the returned pointer, since it uses a different time struct for each thread) On Windows, this is equivalent to a call to localtime(<em>timep</em>, <em>result</em>). In addition, a static mutex is used to make it threadsafe.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">timep</td><td>Pointer to current time (Unix time_t; seconds since epoch) </td></tr>
    <tr><td class="paramname">result</td><td>The result of calling platform localtime function is copied into this struct, so it must have been allocated. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>false on error (e.g. invalid input), otherwise true.</dd></dl>
<p>Example: </p><div class="fragment"><div class="line"><span class="keyword">struct </span>tm t;</div><div class="line"><a class="code" href="classArUtil.html#a40c2583783ed4ce597593e0d3496c1b9">ArUtil::localtime</a>(time(NULL), &amp;t);</div><div class="line"><a class="code" href="classArLog.html#a43a8b3789126c818f390f24bdbceccce">ArLog::log</a>(<span class="stringliteral">&quot;Current month is %d.\n&quot;</span>, t.tm_mon);</div></div><!-- fragment --> 
</div>
</div>
<a class="anchor" id="a513dd8e7679a8c1b2e6e51554a981991"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArUtil::localtime </td>
          <td>(</td>
          <td class="paramtype">struct tm *&#160;</td>
          <td class="paramname"><em>result</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Call <a class="el" href="classArUtil.html#a40c2583783ed4ce597593e0d3496c1b9" title="Interface to native platform localtime() function. ">ArUtil::localtime(const time_t*, struct tm *)</a> with the current time obtained by calling time(NULL). </p>
<p>Call <a class="el" href="classArUtil.html#a40c2583783ed4ce597593e0d3496c1b9" title="Interface to native platform localtime() function. ">ArUtil::localtime()</a> with the current time obtained by calling time(NULL).</p>
<dl class="section return"><dt>Returns</dt><dd>false on error (e.g. invalid input), otherwise true. </dd></dl>

</div>
</div>
<a class="anchor" id="a754c3bc37df607f8157dad3521abac5e"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArUtil::lower </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>dest</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>src</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>maxLen</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Lowers a string from src into dest, make sure there's enough space. </p>
<p>This copies src into dest but makes it lower case make sure you have at least maxLen arrays that you're passing as dest...</p>
<p>this allocates no memory </p>

</div>
</div>
<a class="anchor" id="a8cacafc1a7171298772f965e94a7c00f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArUtil::matchCase </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>baseDir</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>fileName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>result</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>resultLen</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>this matches the case out of what file we want </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">baseDir</td><td>the base directory to work from </td></tr>
    <tr><td class="paramname">fileName</td><td>the fileName to squash the case from</td></tr>
    <tr><td class="paramname">result</td><td>where to put the result </td></tr>
    <tr><td class="paramname">resultLen</td><td>length of the result</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if it could find the file, the result is in result, false if it couldn't find the file </dd></dl>

</div>
</div>
<a class="anchor" id="a151af769c1afe54cf5b25f68d5a049ef"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">time_t ArUtil::parseTime </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>str</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool *&#160;</td>
          <td class="paramname"><em>ok</em> = <code>NULL</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>toToday</em> = <code>true</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Parses the given time string (h:mm) and returns the corresponding time. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">str</td><td>the char * string to be parsed; in the 24-hour format h:mm </td></tr>
    <tr><td class="paramname">ok</td><td>an output bool * set to true if the time is successfully parsed; false, otherwise </td></tr>
    <tr><td class="paramname">toToday</td><td>true to find the time on the current day, false to find the time on 1/1/70 </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>time_t if toToday is true then its the parsed time on the current day, if toToday is false then its the parsed time on 1/1/70 1/1/70 </dd></dl>

</div>
</div>
<a class="anchor" id="a7c26ed6c4b24e7bd86d817bd3771e986"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArUtil::putCurrentDayInString </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>s</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Put the current day (GMT) of the month in s (e.g. </p>
<p>"20"). </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">s</td><td>String buffer (allocated) to write day into </td></tr>
    <tr><td class="paramname">len</td><td>Size of <em>s</em> </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="aebb76d96041c94145b683e0e1018a807"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArUtil::putCurrentHourInString </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>s</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Put the current hour (GMT) in s (e.g. </p>
<p>"13" for 1 o'clock PM). </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">s</td><td>String buffer (allocated) to write hour into </td></tr>
    <tr><td class="paramname">len</td><td>Size of <em>s</em> </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a76e777a8b67d8af271f4c128b486bf3d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArUtil::putCurrentMinuteInString </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>s</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Put the current minute (GMT) in s (e.g. </p>
<p>"05"). </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">s</td><td>String buffer (allocated) to write minutes into </td></tr>
    <tr><td class="paramname">len</td><td>Size of <em>s</em> </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="abd53d34341eac7720762fe97474056b2"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArUtil::putCurrentMonthInString </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>s</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Put the current month (GMT) in s (e.g. </p>
<p>"09" if September). </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">s</td><td>String buffer (allocated) to write month into </td></tr>
    <tr><td class="paramname">len</td><td>Size of <em>s</em> </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a96e45e795111480fa44b53d69d51bfbd"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArUtil::putCurrentSecondInString </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>s</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Put the current second (GMT) in s (e.g. </p>
<p>"59"). </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">s</td><td>String buffer (allocated) to write seconds into </td></tr>
    <tr><td class="paramname">len</td><td>Size of <em>s</em> </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a6176b06a59bff3126b91e60863a95e65"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void ArUtil::putCurrentYearInString </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>s</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>len</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Put the current year (GMT) in s (e.g. </p>
<p>"2005"). </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">s</td><td>String buffer (allocated) to write year into </td></tr>
    <tr><td class="paramname">len</td><td>Size of <em>s</em> </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a7674efc30afe02fb0cd37d773469ca2c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">long ArUtil::sizeFile </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>fileName</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>OS-independent way of finding the size of a file. </p>
<dl class="section return"><dt>Returns</dt><dd>size in bytes. -1 on error. </dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">fileName</td><td>name of the file to size </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ae14ccc824edc9460821dc4fbb99926b1"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::list&lt; std::string &gt; ArUtil::splitFileName </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>fileName</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>this splits up a file name (it isn't exported since it'd crash with dlls) </p>
<p>This function assumes the slashes are all heading the right way already. </p>

</div>
</div>
<a class="anchor" id="ab17364ae21df36b1d11942bc5d75b074"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">int ArUtil::strcasecmp </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>str</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>str2</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Finds out if two strings are equal (ignoring case) </p>
<p>This compares two strings ignoring case, it returns an integer less than, equal to, or greater than zero if str is found, respectively, to be less than, to match, or be greater than str2.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">str</td><td>the string to compare </td></tr>
    <tr><td class="paramname">str2</td><td>the second string to compare </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>an integer less than, equal to, or greater than zero if str is found, respectively, to be less than, to match, or be greater than str2. </dd></dl>

</div>
</div>
<a class="anchor" id="a1951f269b99ad3b320c70d286122d5d3"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">int ArUtil::strcasecmp </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>str</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>str2</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Finds out if two strings are equal (ignoring case) </p>
<p>This compares two strings ignoring case, it returns an integer less than, equal to, or greater than zero if str is found, respectively, to be less than, to match, or be greater than str2.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">str</td><td>the string to compare </td></tr>
    <tr><td class="paramname">str2</td><td>the second string to compare </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>an integer less than, equal to, or greater than zero if str is found, respectively, to be less than, to match, or be greater than str2. </dd></dl>

</div>
</div>
<a class="anchor" id="ae497bcb1f1fe95750aa942c6e54bdf23"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">int ArUtil::strcasecmp </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>str</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>str2</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Finds out if two strings are equal (ignoring case) </p>
<p>This compares two strings ignoring case, it returns an integer less than, equal to, or greater than zero if str is found, respectively, to be less than, to match, or be greater than str2.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">str</td><td>the string to compare </td></tr>
    <tr><td class="paramname">str2</td><td>the second string to compare </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>an integer less than, equal to, or greater than zero if str is found, respectively, to be less than, to match, or be greater than str2. </dd></dl>

</div>
</div>
<a class="anchor" id="af071db74ee72c55afbe07d26b801afdb"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">int ArUtil::strcasecmp </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>str</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>str2</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Finds out if two strings are equal (ignoring case) </p>
<p>This compares two strings ignoring case, it returns an integer less than, equal to, or greater than zero if str is found, respectively, to be less than, to match, or be greater than str2.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">str</td><td>the string to compare </td></tr>
    <tr><td class="paramname">str2</td><td>the second string to compare </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>an integer less than, equal to, or greater than zero if str is found, respectively, to be less than, to match, or be greater than str2. </dd></dl>

</div>
</div>
<a class="anchor" id="aef5b8a681b6c906ecc8b2cd5660925ad"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">int ArUtil::strcasequotecmp </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>str1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>str2</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Compares two strings (ignoring case and surrounding quotes) </p>
<p>This helper method is primarily used to ignore surrounding quotes when comparing <a class="el" href="classArArgumentBuilder.html" title="This class is to build arguments for things that require argc and argv. ">ArArgumentBuilder</a> args. </p><dl class="section return"><dt>Returns</dt><dd>int set to 0 if the two strings are equivalent, a negative number if str1 is "less than" str2, and a postive number if it is "greater than". </dd></dl>

</div>
</div>
<a class="anchor" id="a35643715dec6e4e781d6b14f9bb18dc6"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">int ArUtil::strcmp </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>str</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>str2</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Finds out if two strings are equal. </p>
<p>This compares two strings, it returns an integer less than, equal to, or greater than zero if <em>str</em> is found, respectively, to be less than, to match, or be greater than <em>str2</em>.</p>
<p>(This is a version of the standard C <a class="el" href="classArUtil.html#a35643715dec6e4e781d6b14f9bb18dc6" title="Finds out if two strings are equal. ">strcmp()</a> function for use with std::string strings instead.) </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">str</td><td>the string to compare </td></tr>
    <tr><td class="paramname">str2</td><td>the second string to compare </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>an integer less than, equal to, or greater than zero if str is found, respectively, to be less than, to match, or be greater than str2. </dd></dl>

</div>
</div>
<a class="anchor" id="aa3a3c3e93c9de270d85201f6f6f5f982"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">int ArUtil::strcmp </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>str</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>str2</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Finds out if two strings are equal. </p>
<p>This compares two strings, it returns an integer less than, equal to, or greater than zero if str is found, respectively, to be less than, to match, or be greater than str2.</p>
<p>(This is a version of the standard C <a class="el" href="classArUtil.html#a35643715dec6e4e781d6b14f9bb18dc6" title="Finds out if two strings are equal. ">strcmp()</a> function for use with std::string strings instead.) </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">str</td><td>the string to compare </td></tr>
    <tr><td class="paramname">str2</td><td>the second string to compare </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>an integer less than, equal to, or greater than zero if str is found, respectively, to be less than, to match, or be greater than str2. </dd></dl>

</div>
</div>
<a class="anchor" id="a2d79ca41ffb02f2a40c1385de5661f3f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">int ArUtil::strcmp </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>str</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>str2</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Finds out if two strings are equal. </p>
<p>This compares two strings, it returns an integer less than, equal to, or greater than zero if str is found, respectively, to be less than, to match, or be greater than str2.</p>
<p>(This is a version of the standard C <a class="el" href="classArUtil.html#a35643715dec6e4e781d6b14f9bb18dc6" title="Finds out if two strings are equal. ">strcmp()</a> function for use with std::string strings instead.) </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">str</td><td>the string to compare </td></tr>
    <tr><td class="paramname">str2</td><td>the second string to compare </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>an integer less than, equal to, or greater than zero if str is found, respectively, to be less than, to match, or be greater than str2. </dd></dl>

</div>
</div>
<a class="anchor" id="a0027579e9a503b09c30e49505aa311de"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">int ArUtil::strcmp </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>str</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>str2</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Finds out if two strings are equal. </p>
<p>This compares two strings, it returns an integer less than, equal to, or greater than zero if str is found, respectively, to be less than, to match, or be greater than str2.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">str</td><td>the string to compare </td></tr>
    <tr><td class="paramname">str2</td><td>the second string to compare </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>an integer less than, equal to, or greater than zero if str is found, respectively, to be less than, to match, or be greater than str2. </dd></dl>

</div>
</div>
<a class="anchor" id="af910983b55521a60d39602d1964df7a8"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool ArUtil::stripQuotes </td>
          <td>(</td>
          <td class="paramtype">std::string *&#160;</td>
          <td class="paramname"><em>strToStrip</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Strips the quotes from the given string. </p>
<p>This method behaves similarly to the char[] version, except that it modifies the given std::string.</p>
<p>If the first and last characters of the string are quotation marks ("), then they are removed from the string. Multiple nested quotation marks are not handled. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">strToStrip</td><td>a pointer to the std::string to be read/modified; must be non-NULL </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>bool true if the string was successfully processed; false otherwise </dd></dl>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>ariaUtil.h</li>
<li>ariaUtil.cpp</li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="classArUtil.html">ArUtil</a></li>
    <li class="footer">Generated by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.11 </li>
  </ul>
</div>
</body>
</html>
